package org.example.env_boot.repository;

import org.example.env_boot.entity.GridMember;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Optional;

/**
 * 网格员数据访问接口
 */
@Repository
public interface GridMemberRepository extends JpaRepository<GridMember, Integer> {
    
    /**
     * 根据网格员登录编码查找
     */
    Optional<GridMember> findByGmCode(String gmCode);
    
    /**
     * 根据网格员编码和密码查找（用于登录）
     */
    Optional<GridMember> findByGmCodeAndPassword(String gmCode, String password);
    
    /**
     * 根据省ID查找网格员
     */
    List<GridMember> findByProvinceId(Integer provinceId);
    
    /**
     * 根据城市ID查找网格员
     */
    List<GridMember> findByCityId(Integer cityId);
    
    /**
     * 根据省ID和城市ID查找网格员
     */
    List<GridMember> findByProvinceIdAndCityId(Integer provinceId, Integer cityId);
    
    /**
     * 检查网格员编号是否已存在
     */
    boolean existsByGmCode(String gmCode);
    
    /**
     * 检查手机号是否已存在
     */
    boolean existsByGmPhone(String gmPhone);
} 